<%@ page contentType="text/html; charset=utf-8"
 pageEncoding="utf-8" trimDirectiveWhitespaces="true" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<jsp:useBean id="bdao" class="untiring07.j2ee.basic.projectv10.dao.BoardDAO" scope="application"/>
<c:set var="ftype" value="${param.findtype }"/>
<c:set var="fkey" value="${param.findkey }"/>
<!-- 검색유형 및 검색값 처리 -->
<c:set var="qury" value="&findtype=${ ftype }&findkey=${fkey }" />
<c:set var="burl" value="?action=list&cpage=" />
<!-- 검색 질의문 작성 -->
<c:set var="total" value="${bdao.totalBoard(ftype,fkey) }"/>
<c:set var="perpage" value="20"/>
<c:set var="allpage" value="${total/perpage}"/>
<!-- 총 페이지 수 계산 -->
<fmt:formatNumber var="allpage" type="number" value="${allpage+0.5 }" pattern="#"/>
<!--페이지 내비게이션 시작값 계산 : 0.4를 더해 반올림 조건을 올림 조건으로만들어 준다 예)57.1+0.4->반올림으로 58  -->
<c:set var="cpage" value="${param.cpage }"/>
<c:if test="${empty cpage }">
	<c:set var="cpage" value="1"/>
</c:if>
<c:set var="startno" value="${(cpage-1)*perpage }" />
<%-- <fmt:formatNumber var="startnav" pattern="#" value="${(cpage-1)/10-0.5 }" type="number" /> --%>
<fmt:parseNumber var="startnav" value="${((cpage-1)/10)}" integerOnly="true"/>
<fmt:parseNumber var="startnav1" value="${((allpage-1)/10)}" integerOnly="true"/>
<!-- allpage의 startnav : 마지막 페이지 10칸 건너띄우기 아이콘 없애기위해 -->
<c:set var="startnav" value="${startnav*10+1}"/>
<c:set var="startnav1" value="${startnav1*10+1}"/>
<!-- 게시물 번호 시작값 계산 -->
<c:set var="startbno" value="${total-(perpage*(cpage-1)) }"/>


		<style type="text/css">
			table { width: 75%; margin: 0 auto;
				border-collapse: collapse;
				table-layout: fixed }
			th, td { border : 1px solid black;
				padding: 10px; text-align: center; }
			.bdtitle { text-align: left; white-space: nowrap;
				overflow: hidden; 	text-overflow: ellipsis; }
			.cpage { font-size: 1.5em; color: red; 
				font-weight: bold; }
			.center { text-align: center; font-size: 1.3em; }
		</style>

		<div id="content">
			<h2>게시판</h2>
			<table>
				<colgroup>
					<col style="width:10%" />
					<col />
					<col style="width:15%" />
					<col style="width:15%" />
					<col style="width:10%" />
				</colgroup>
				<!-- 검색창 시작  -->
				<tr><td colspan="5" style="text-align: right">
					<select name="findtype">
						<option>선택하세요</option>
						<option value="title">제목</option>
						<option value="uid">작성자</option>
						<option value="contents">본문</option>
						<option value="wdate">작성일</option>
					</select>
					<input type="text" name="findkey"/>
					<button type="button" id="findbtn">검색하기</button>
				</td></tr>
				<!-- 검색창 끝  -->
				
				<!-- 제목행 시작 -->
				<tr>
					<th>번호</th><th>제목</th>
					<th>작성자</th><th>작성일</th>
					<th>조회</th>
				</tr>
				<!-- 제목행 끝 -->
				<c:forEach var="v" items="${bdao.listBoard(startno,ftype,fkey)}" >
				<!-- 본문행 출력시작 -->
				<tr>
					<td>${startbno}</td>
					<td class="bdtitle"> 
					<a href="?action=view&bdno=${v.bdno}">                          
						${v.title}</a> </td>
					<td>${v.uid}</td>
					<td>
						${fn:substring(v.wdate,0,6)}
						<%-- ${v.wdate.substring(0,6)}  --%>
					</td>
					<td>${v.reades}</td>
				</tr>
				<!-- 본문행 출력끝 -->
				<!-- 게시물 글 번호 수정 -->
				<c:set var="startbno" value="${startbno-1 }"></c:set>
				</c:forEach>
			
			<tr>
			<td colspan="5" style="text-align: right">
			<c:if test="${not empty sessionScope.uid }">
				<button type="button" onclick="location.href='?action=write';">글쓰기</button>
			</c:if>
			<c:if test="${empty sessionScope.uid }">
				<h5 style="color:red">로그인 하세요!</h5>
			</c:if>
			</td>
			</tr>	
			</table>
			<p class="center">
			<!-- 처음 -->
			<c:if test="${cpage ne 1 }"><a href="${burl }1${qury}" title="이전-1페이지"> 처음 </a></c:if>
			<!-- 현재 페이지가 1이 아닌경우에만 이전버튼 표시 -->
			<%-- 이전버튼은 이전페이지로 이동할 수 있는 링크 제공 --%>
			<c:if test="${cpage ne 1 }"><a href="${burl }${cpage -1 }${qury}" title="이전-1페이지"> ◀ </a></c:if>
			<c:if test="${cpage > 10 }"><a href="${burl }${cpage -10 }${qury}" title="이전-1페이지"> ◁◁ </a></c:if>
			
			<c:forEach var="p" begin="${startnav }" end="${startnav+9 }" >
			<c:if test="${p le allpage }">
			<c:if test="${cpage eq p }"><span class="cpage" >${p}</span></c:if>
			<c:if test="${cpage ne p }"><a href="${burl }${p}${qury}">${p}</a></c:if>
			</c:if><!-- 맨 마지막 페이지 링크까지만 출력  -->
			</c:forEach>
			<c:if test="${startnav1 > cpage }"><a href="${burl }${startnav +10 }${qury}" title="현재페이지+10"> ▷▷ </a></c:if>
			<%-- <c:if test="${cpage ne allpage}">
			<a href="?action=list&cpage=${startnav+10}" title="이전-1페이지"> ▷▷ </a>
			</c:if> --%>
			<c:if test="${cpage ne allpage}">
			<a href="${burl }${cpage+1 }${qury}" title="현재페이지+1"> ▶ </a>
			</c:if>
			<!-- 끝 -->
			<c:if test="${cpage ne allpage}">
			<a href="${burl }${allpage}${qury}" title="끝페이지"> 마지막 </a>
			</c:if>
			</p>
			<hr/>
			<p>총 게시물 수:${total }</p>
			<p>페이지당 게시물 수:${perpage }</p>
			<p>총 페이지 수:${allpage }</p>
			<p>현재 페이지:${cpage }</p>
			<p>시작번호:${startno }</p>
			<p>nav시작번호:${startnav }</p>
			<p>게시글 시작번호:${startbno }</p>
			<p>검색 유형:${ftype }</p>
			<p>검색 값:${fkey }</p>
			
			<p>rj:</p>
			
		</div><!-- // content -->
		<script type="text/javascript">
			var findbtn = document.getElementById("findbtn");
			findbtn.onclick=function(){
				var ftype = document.getElementsByName("findtype")[0].value;
			    var fkey = document.getElementsByName("findkey")[0].value;
				var url = "?action=list";
				var find = "&findtype="+ftype+"&findkey="+fkey;
				location.href=url+find;		
			};
		</script>




